
// 功能: 用于增强Vue
// 本质:包含insta11方法的一个对象，instal1的第一个参数是Vue，第二个以后的参数是插件使用者传递的数据。
// 定义插件:
// 对象.install = function (Vue, options) [
// 1。添加全局过滤器
// Vue.filter(....)
// 2。添加全局指令
// Vue.directive(....
// 3。配置全局混入(合)
// Vue.mixin(....
// 4。添加实例方法
// Vue.prototype.$myMethod = function () [...)
// Vue.prototype.$myProperty = xxxx
// 使用插件: Vue.use()

export default  {
    install(Vue,x,y,z){
        console.log(x,y,z)
        Vue.filter('mySlice',function(val){
            return val.slice(0,4)
        })

        Vue.directive('fbind',{
            //指令与元素成功绑定时
            bind(element,binding){
                element.value=binding.value;
            },
            //指令所在元素被插入页面时
            inserted(element,binding){
                element.focus();
            },
            //指令所在模板被重新解析时
            update(element,binding){
                element.value=binding.value;
            }
        })
        Vue.mixin({
            data(){
                return{
                    x:10,
                    y:20
                }
            }
        })
        Vue.prototype.hello= ()=>{
            alert('你好啊 ')
        }
    }
}
